package com.xmindguoguo.boot.modular.system.model;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import lombok.Data;

/**
 * 
 *
 * @author xmind-果果
 * @Date 2019-01-30 15:52
 */
@Data
@TableName("t_system_error_log")
public class TSystemErrorLogModel implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * Id
     * 
     */
    @TableId(value = "id", type = IdType.INPUT)
    private Long id;

    /**
     * 操作url 对应的功能
     * 
     */
    @TableField(value = "reqName")
    private String reqName;

    /**
     * 操作url
     * 
     */
    @TableField(value = "reqUrl")
    private String reqUrl;

    /**
     * 请求类+包名称
     * 
     */
    @TableField(value = "classTypeName")
    private String classTypeName;

    /**
     * 方法名称
     * 
     */
    @TableField(value = "methodName")
    private String methodName;

    /**
     * 参数
     * 
     */
    @TableField(value = "params")
    private String params;

    /**
     * 错误名称
     * 
     */
    @TableField(value = "errorName")
    private String errorName;

    /**
     * 错误相信信息
     * 
     */
    @TableField(value = "errorInfo")
    private String errorInfo;

    /**
     * 额外的信息
     * 
     */
    @TableField(value = "memo")
    private String memo;

    /**
     * 错误的友好提示
     * 
     */
    @TableField(value = "tips")
    private String tips;

    /**
     * ip
     * 
     */
    @TableField(value = "ip")
    private String ip;

    /**
     * 操作地区
     * 
     */
    @TableField(value = "address")
    private String address;

    /**
     * 用户使用系统信息字符串
     * 
     */
    @TableField(value = "userAgentStr")
    private String userAgentStr;

    /*    public void setUserAgentStr(String userAgentStr) {
        this.userAgentStr = userAgentStr;
        this.userSystemModel = new UserSystemModel(userAgentStr);
    }*/

    /**
     * 创建时间
     * 
     */
    @TableField(value = "createTime")
    private Date createTime;

    /**
     * 当前操作用户
     * 
     */
    @TableField(value = "loginUserId")
    private Long loginUserId;
    /**
     * 浏览器及其操作系统信息
     */
    /*    @TableField(exist = false)
    private UserSystemModel userSystemModel;*/
    /**
     * 用户登录账号
     * 
     */
    @TableField(value = "account")
    private String account;
}
